package com.zh.zhbootcommon.entity.taxi;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zh.zhbootcommon.domain.DBaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * 车辆信息表
 * </p>
 *
 * @author JueDream
 * @since 2021-08-13
 */
@Getter
@Setter
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("zh_car_info")
@ApiModel(value="DCarInfo对象", description="车辆信息表")
public class DCarInfo extends DBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "车辆ID")
    @TableId(value = "car_id", type = IdType.AUTO)
    public Integer carId;

    @ApiModelProperty(value = "车辆名称")
    @TableField("car_name")
    public String carName;

    @ApiModelProperty(value = "车牌号")
    @TableField("car_plate_code")
    public String carPlateCode;

    @ApiModelProperty(value = "车俩颜色")
    @TableField("car_colour")
    public String carColour;

    @ApiModelProperty(value = "车辆类型(10-摩托车(双人) 20-私家车(四座) 30-私家车(七座))")
    @TableField("car_type")
    public Integer carType;

    @ApiModelProperty(value = "车长")
    @TableField("car_length")
    public Integer carLength;

    @ApiModelProperty(value = "车宽")
    @TableField("car_width")
    private Integer carWidth;

    @ApiModelProperty(value = "车高")
    @TableField("car_height")
    public Integer carHeight;

    @ApiModelProperty(value = "小程序openid(司机)")
    @TableField("openid")
    public String openId;

    @ApiModelProperty(value = "小程序用户名称(司机)")
    @TableField(exist = false)
    public String miniName;

    public DCarInfo(){}

    @Builder
    public DCarInfo(Integer carId, String carName, String carPlateCode, String carColour, Integer carType, Integer carLength, Integer carWidth, Integer carHeight, String openId, String miniName) {
        this.carId = carId;
        this.carName = carName;
        this.carPlateCode = carPlateCode;
        this.carColour = carColour;
        this.carType = carType;
        this.carLength = carLength;
        this.carWidth = carWidth;
        this.carHeight = carHeight;
        this.openId = openId;
        this.miniName = miniName;
    }
}
